<!DOCTYPE html>
<html lang='zh-CN'>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
<title>数据字典</title>
<link rel="icon" href="favicon.ico" type="image/ico">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/materialdesignicons.min.css" rel="stylesheet">
<link href="css/animate.css" rel="stylesheet">
<link href="css/style.min.css" rel="stylesheet">
<link href="js/bootstrap-table/bootstrap-table.min.css" rel="stylesheet">
<link href="js/bootstrapvalidator/dist/css/bootstrapValidator.css" rel="stylesheet">
</head>
<body>
<div class="container-fluid p-t-15">

  <div class="row">
    <div class="col-lg-12">
      <div class="card">
        <div class="card-header">

          <div id="toolbar" class="toolbar-btn-action">
              <form class="form-inline" method="post" id="searchForm">
                <div class="form-group">
                  <label>属性描述:</label>
                  <input type="text" class="form-control" name="codeDetail">
                </div>
                <div class="form-group">
                  <button class="btn btn-info btn_query btn-round" type="button" id="searchFormBtn">查询</button>
                </div>
                <div class="form-group">
                  <button class="btn btn-success btn_query btn-round" type="button" id="addBtn">添加</button>
                </div>
                <div class="form-group">
                  <button class="btn btn-warning btn_query btn-round" type="button" id="editBtn">编辑</button>
                </div>
                <div class="form-group">
                  <button class="btn btn-danger btn_query btn-round" type="button" onclick="changeCodeStatus(0)">禁用</button>
                </div>
                <div class="form-group">
                  <button class="btn btn-purple btn_query btn-round" type="button" onclick="changeCodeStatus(1)">启用</button>
                </div>
              </form>
          </div>

        </div>
        <div class="card-body">

          <table id="grid_data"></table>

        </div>
      </div>
    </div>
  </div>

  <!--  添加与编辑模态框 -->
  <div class="modal fade" id="addOrEditModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
    <div class="modal-dialog" role="document">
      <div class="modal-content">
        <div class="modal-header">
          <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
          <h4 class="modal-title" id="exampleModalLabel">数据字典</h4>
        </div>
        <div class="modal-body">
          <form id="addOrEditForm" method="post">
            <div class="form-group">
              <label class="control-label">表名称：</label>
              <input type="hidden" name="id">
              <input type="text" class="form-control" name="codeTable">
            </div>
            <div class="form-group">
              <label class="control-label">表字段：</label>
              <input type="text" class="form-control" name="codeField">
            </div>
            <div class="form-group">
              <label class="control-label">属性描述：</label>
              <input type="text" class="form-control" name="codeDetail">
            </div>
            <div class="form-group">
              <label class="control-label">属性编号：</label>
              <input type="text" class="form-control" name="codeNum" onkeyup="value = value.replace(/[^0-9]/g,'')">
            </div>
            <div class="form-group">
              <label class="control-label">属性名称：</label>
              <input type="text" class="form-control" name="codeName">
            </div>
            <div class="modal-footer">
              <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
              <button type="button" id="saveFormBtn" class="btn btn-primary">保存</button>
            </div>
          </form>
        </div>

      </div>
    </div>
  </div>


  <script type="text/javascript" src="js/jquery.min.js"></script>
  <script type="text/javascript" src="js/bootstrap.min.js"></script>
  <script type="text/javascript" src="js/bootstrap-table/bootstrap-table.js"></script>
  <script type="text/javascript" src="js/bootstrap-table/bootstrap-table-zh-CN.min.js"></script>
  <script type="text/javascript" src="js/zero2one/zero2one.version.js"></script>
  <script type="text/javascript" src="js/zero2one/zero2one.core.js"></script>
  <!-- bootstrap表单验证插件 -->
  <script type="text/javascript" src="js/bootstrapvalidator/dist/js/bootstrapValidator.js"></script>
  <!-- bootstrap弹出框插件 -->
  <script type="text/javascript" src="js/jquery.bootstrap.min.js"></script>
  <!-- 表单填充插件 -->
  <script type="text/javascript" src="js/jquery-form/jquery.formloader.js"></script>

  <script type="text/javascript">

      //设置表头
      var columns = [
          {checkbox: true},
          {field: 'id',title: 'ID'},
          {field: 'codeTable',title: '表名称'},
          {field: 'codeField',title: '表字段'},
          {field: 'codeDetail',title: '属性描述'},
          {field: 'codeNum',title: '属性编号'},
          {field: 'codeName',title: '属性名称'},
          {field: 'code_status',title: '状态'}
      ];

      //进入主界面加载数据
      zero2one.datagrid("grid_data", "/codePage",function (params) {
          return $.extend(zero2one.tableInitParam(params), zero2one.form2json("searchForm"));
      }, columns);

      //点击查询按钮重新加载页面数据
      $("#searchFormBtn").click(function () {
          $('#grid_data').bootstrapTable('refresh');
      });

      //点击添加按钮弹出模态框
      $("#addBtn").click(function () {

          //获取选中行的数据
          var datas = $('#grid_data').bootstrapTable('getSelections');
          //判断是否选中行数据，如果没有则提示
          if(datas.length == 1){
              //填充表单
              $("#addOrEditForm").formloader({data: datas[0]});
          }

          $("input[name=id]").val("");
          $("#addOrEditModal").modal("show");
      });

      $("#editBtn").click(function () {

          //获取选中行的数据
          var datas = $('#grid_data').bootstrapTable('getSelections');
          //判断是否选中行数据，如果没有则提示
          if(datas.length == 1){
              //填充表单
              $("#addOrEditForm").formloader({data: datas[0]});
          }else{
              $.messager.alert("温馨提示", "请选择一条数据操作");
              return;
          }

          $("#addOrEditModal").modal("show");
      });

      $('#addOrEditForm').bootstrapValidator({
          fields: {
              codeTable: {validators: {notEmpty: {message: '表名称不能为空'}}},
              codeField: {validators: {notEmpty: {message: '表字段不能为空'}}},
              codeDetail: {validators: {notEmpty: {message: '属性描述不能为空'}}},
              codeNum: {validators: {notEmpty: {message: '属性编号不能为空'}}},
              codeName: {validators: {notEmpty: {message: '属性名称不能为空'}}}
          }
      });

      $("#saveFormBtn").click(function () {
          var bv = $('#addOrEditForm').data('bootstrapValidator');
          bv.validate();
          if (bv.isValid()) {
              zero2one.request("/addOrEditCode?f="+new Date().getTime(),$("#addOrEditForm").serialize(),function (data) {
                  window.location.reload();
              });
          }
      });


      function changeCodeStatus(status) {

            //获取选中行的数据
            var datas = $('#grid_data').bootstrapTable('getSelections');
            //判断是否选中行数据，如果没有则提示
            if(datas.length > 0){
                $.messager.confirm("温馨提示", "您确定要改变属性状态吗?", function () {
                    zero2one.request("/changeCodeStatus?f="+new Date().getTime(),{"status" : status,"ids" : zero2one.array2str(datas)},function (data) {
                        window.location.reload();
                    });
                })
            }else{
                $.messager.alert("温馨提示", "请选择一条或多条数据操作");

            }

      }

  </script>
</div>
</body>
</html>
